1. Technical Field
The present invention relates to information retrieval in data-processing systems. In particular, the present invention relates to data-processing systems which are linked to other data-processing systems by an associated linking network. More particularly, the present invention relates to associated networks which utilize mark-up languages. Still more particularly, the present invention relates to a method and system for effectively managing server-latency difficulties. The present invention also relates to a web browser method and system for backgrounding a link access during slow link access time periods in order to allow web browser users to effectively manage attempts at obtaining particular web pages during such time periods.
2. Description of the Related Art
The development of computerized information resources, such as the "Internet" and the proliferation of "web" browsers allow users of data-processing systems to link with other servers and networks and thus retrieve vast amounts of electronic information heretofore unavailable in an electronic medium. Such electronic information is increasingly displacing more conventional means of information transmission, such as newspapers, magazines, and even television. In communications, a set of computer networks which are possibly dissimilar from one another are joined together by "gateways" that handle data transfer and the conversion of messages from the sending network to the protocols used by the receiving network, with packets if necessary. A gateway is a device used to connect dissimilar networks (i.e., networks utilizing different communication protocols) so that electronic information can be passed from one network to the other. Gateways transfer electronic information, converting such information to a form compatible with the protocols used by the second network for transport and delivery. The term "Internet" is an abbreviation for "Internetwork," and refers commonly to the collection of networks and gateways that utilize the TCP/IP suite of protocols, which are well-known in the art of computer networking. TCP/IP is an acronym for "Transport Control Protocol/Interface Program," a software protocol developed by the Department of Defense for communication between computers.
Electronic information transferred between data-processing networks is usually presented in hypertext, a metaphor for presenting information in a manner in which text, images, sounds, and actions become linked together in a complex non-sequential web of associations that permit the user to "browse" through related topics, regardless of the presented order of the topics. These links are often established by both the author of a hypertext document and by the user, depending on the intent of the hypertext document. For example, traveling among links to the word "iron" in an article displayed within a graphical user interface in a data-processing system might lead the user to the periodic table of the chemical elements (i.e., linked by the word "iron"), or to a reference to the use of iron in weapons in Europe in the Dark Ages. The term "hypertext" was coined in the 1960s to describe documents, as presented by a computer, that express the nonlinear structure of ideas, as opposed to the linear format of books, film, and speech.
The term "hypermedia," on the other hand, more recently introduced, is nearly synonymous with "hypertext" but focuses on the nontextual components of hypertext, such as animation, recorded sound, and video. Hypermedia is the integration of graphics, sound, video, or any combination into a primarily associative system of information storage and retrieval. Hypermedia, as well as hypertext, especially in an interactive format where choices are controlled by the user, is structured around the idea of offering a working and learning environment that parallels human thinking--that is, an environment that allows the user to make associations between topics rather than move sequentially from one to the next, as in an alphabetic list. Hypermedia, as well as hypertext topics, are thus linked in a manner that allows the user to jump from one subject to other related subjects during a search for information. Hyperlink information, such as "World Wide Web" address sites, are contained within hypermedia and hypertext documents, which allow a user to go back to the "original" or referring Web site by the mere "click" (i.e., with a mouse or other pointing device) of the hyperlinked topic.
A typical networked system which utilizes hypertext and hypermedia conventions follows a client/server architecture. The "client" is a member of a class or group that uses the services of another class or group to which it is not related. Thus, in computing, a client is a process (i.e., roughly a program or task) that requests a service provided by another program. The client process utilizes the requested service without having to "know" any working details about the other program or the service itself. Thus, in a client/server architecture, particularly a networked system, a client is usually a computer that accesses shared network resources provided by another computer (i.e., a server).
In such a client/server architecture, a request by a user for news can be sent by a client application program to a server. Such a server is typically a remote computer system accessible over the Internet or other communication medium. The server scans and searches for raw (e.g., unprocessed) information sources (e.g., newswire feeds or newsgroups). Based upon such requests by the user, the server presents filtered electronic information as server responses to the client process. The client process may be active in a first computer system, and the server process may be active in a second computer system, and communicate with one another over a communication medium, thus providing distributed functionality and allowing multiple clients to take advantage of the information-gathering capabilities of the server.
Client and server can communicate with one another utilizing the functionality provided by Hypertext Transfer Protocol (HTTP). The World Wide Web (WWW) or, simply, the Web, includes all the servers adhering to this standard which are accessible to clients via universal resource locators. For example, communication can be provided over a communication medium. In particular, the client and server may be coupled to one another via Serial Line Internet Protocol (SLIP) or TCP/IP connections for high-capacity communication. Active within the client is a first process, known as a "browser," which establishes the connection with the server and presents information to the user. The server itself executes corresponding server software which presents information to the client in the form of HTTP responses. The HTTP responses correspond to Web "pages" constructed from a Hypertext Markup Language (HTML), or other server-generated data.
The client and server typically display browsers and other Internet data for a user via a graphical user interface. A graphical user interface is a type of display format that enables a user to choose commands, start programs, and see lists of files and other options by pointing to pictorial representations (i.e., icons) and lists of menu items on the screen. Choices can generally be activated either with a keyboard or a mouse.
A World Wide Web page may have text, graphic images, and even multimedia objects such as sound recordings or moving video clips. A hypertext page, if more than just text, is usually constructed by loading several separate files, e.g., the hypertext file "main.html" might include a reference to a graphic image file "picture.gif" or to a sound file "beep.wav." When a client workstation sends a request to a server for a page, the server first transmits (at least partially) the main hypertext file associated with the page, and then loads, either sequentially or simultaneously, the other files associated with the page. A given file may be transmitted as several separate pieces via TCP/IP protocol. The constructed page is then displayed on the workstation monitor. A page may be "larger" than the physical size of the monitor screen, and techniques such as scroll bars within a graphical user interface are used by the viewing software (the Web browser) to view different portions of the page.
A common problem faced by individuals utilizing Web browsers to search the World Wide Web is the latency due to slow or unreachable Web servers. In such a situation, a user usually has no other choice but to continue attempting connection to the desired Web site via the Web browser or simply stopping the load operation during a slow link access time period when the user's patience expires. An estimation of the length of time to access such a server is not available to the individual or the Web browser software, thus potentially wasting the individual user's time. In view of the above it can be seen that a need exists for a method and system which would allow a user utilizing a Web browser to background a link access during a link access time period that is proceeding slowly or is expected to proceed slowly. Backgrounding such a link access would allow a user to specify time limits on attempts to obtain a particular Web page, remarks about that particular page, and action to take when the page is fully loaded.